/*题目描述

设计并实现一个圆柱类Cylinder，要求：

（1）设计两个double型的私有数据成员：高度height和底圆半径radius。

（2）设计一个double型的公有静态常量数据成员pi（其值初始化为3.1415926），以及一个获取该常量的公有静态成员函数GetPI。

（3）在构造函数的初始化列表中初始化高度height和底圆半径radius。

（4）设计用于获取半径的成员函数GetRadius、获取高度的成员函数GetHeight、设置半径的成员函数SetRadius、设置高度的成员函数SetHeight。

（5）设计用于计算圆柱体积的成员函数Volume()、计算圆柱表面积的成员函数Area。

在main函数中：根据输入的高度和半径构造圆柱对象，并输出圆柱的基本信息、体积和表面积。
输入

圆柱的高度和底圆半径
输出

圆周率pi、圆柱高度、底圆半径、圆柱的体积和表面积 */

#include <iostream>

using namespace std;

class Cylinder {

public :

    double radius;
    double height;
    
    static const double PI = 3.1415926;
    
	Cylinder (double r, double h) 
    {
        radius = r;
        height = h;
    }
	double GetPI()
	{
		return PI;
	}
    double GetRadius() 
    {
        return radius;
    }
    double GetHeight()
    {
        return height;
    }
    void SetRadius(double r)
    {
        radius = r;
    }
    void SetHeight(double h)
    {
        height = h;
    }
    double Volume()
    {
    	return height * PI * radius * radius;
	}
	double Area()
	{
		return 2 * PI * radius * radius + 2 * PI * radius * height;
	}
};

int main(int argc, char** argv)
{
    double r;
    double h;

    cin >> h >> r ;
    Cylinder c(r,h); 
    cout << "pi="<< c.GetPI() << ", ";
    cout << "height=" << h << ", ";
    cout << "radius=" << r << ":";
    cout << "volume=" << c.Volume() << ", ";
    cout << "area=" << c.Area() ;
    
    return 0;
}